The IOA Language and Toolset : Support forMathematics - Based Distributed Programming Stephen
نویسنده
چکیده
This paper presents a new language for distributed programming, the IOA language, together with a design for a suite of tools, the IOA toolset, that support the production of high-quality distributed software. The language and tools are based on the I/O automaton model, which has been used extensively to describe and verify distributed algorithms. The toolset supports a development process that begins with a high-level speciication, reenes that speciication via successively more detailed designs, and ends by automatically generating eecient distributed programs. The toolset encourages system decomposition, which helps make distributed programs understandable and easy to modify. Most importantly, it provides a variety of validation methods (theorem proving, model checking, and simulation), which can be used to ensure that the generated programs are correct, subject to stated assumptions about externally-provided system services (e.g., communication services).
منابع مشابه
The IOA Language and Toolset: Support for Designing, Analyzing, and Building Distributed Systems
This report describes a new language for distributed programming, the IOA language, together with a high-level design and preliminary implementation for a suite of tools, the IOA toolset, to support the production of high-quality distributed software. The language and tools are based on the I/O automaton model, which has been used to describe and verify distributed algorithms. The toolset suppo...
متن کاملSystematic Removal of Nondeterminism for Code Generation in I O Automata
The Input Output I O automaton model developed by Lynch and Tuttle models components in asynchronous concurrent systems as labeled transition systems IOA is a precise language for de scribing I O automata and for stating their properties A toolset is being developed for IOA to support distributed software design and implemen tation One of the tools consists of a user assisted code generator fro...
متن کاملUsing I/o Automata for Developing Distributed Systems Using I/o Automata for Developing Distributed Systems 279 Sion of I/o Automata. Other Tool Support for I/o Automata Includes the Spectrum Programming Language and Simulator Gol90]. 13.2 General Design Guidelines
This paper describes a new experimental programming language, IOA, for modeling and implementing distributed systems, plus designs for a set of tools to support IOA programming. The language and tools are based on the I/O automaton model for reactive systems, which has been used extensively for research on distributed algorithms. The language supports structured modeling of distributed systems ...
متن کاملFormal veri cation of simulations between I / O automata
This thesis presents a tool for validating descriptions of distributed algorithms in the IOA language using an interactive theorem prover. The tool translates IOA programs into Larch Shared Language speci cations in a style which is suitable for formal reasoning. The framework supports two common strategies for establishing the correctness of distributed algorithms: Invariants and simulation re...
متن کاملComprehensive Speci cation of DistributedSystems Using I
Low level diiculties in the development of distributed systems that are due to non-standard communication protocols and incompatible components or platforms have largely been solved through standardization and commoditization of protocols and platforms. Distributed systems are being designed at higher levels of sophistication these days, and having an expressive yet usable speciication language...
متن کامل